'''
1. bin()：将整数转换为二进制字符串表示。
2. oct()：将整数转换为八进制字符串表示。
3. hex()：将整数转换为十六进制字符串表示。
4. int()：将一个字符串或数字转换为整数。
5. abs()：返回一个数字的绝对值。
6. pow()：返回一个数的幂次方。
7. round()：对一个数字进行四舍五入取整。
8. divmod()：返回两数相除的商和余数。
'''

# ceil() 用于返回大于或等于指定数字的最小整数，返回值是一个整数
from math import comb
import math

# x = 3.1415926
# print(math.ceil(x))  # 4

# comb() 用于计算从指定的集合中选择指定数量的元素的组合数
# n = 5
# k = 2
# c = comb(n,k)
# print(c)   # 10

# copysign() 用于返回第一个参数的绝对值，并与第二个参数的符号组成一个新的数值，
# 它将第一个参数的符号替换为第二个参数的符号，返回一个新的数值。
# x = -12.345
# y = 1.0
# z = math.copysign(x,y)
# print(z)  # 12.345

# fabs（） 用于返回给定数字的绝对值  fabs() 函数返回的是一个浮点数。
# print(math.fabs(-4.22))  # 4.22
# print(abs(-4.22))  # 4.22

# floor() 用于返回小于或等于指定数字的最大整数，返回值是一个整数
# x = 12.345
# print(math.floor(x))  # 12

# fmod（） 用于计算两个数字的余数，可以处理负数的情况
# print(math.fmod(5,2))  # 1.0
# print(math.fmod(-5,2))  # -1.0

# frexp() 用于将一个浮点数拆分成“尾数"和指数，并返回一个元组（m,e）
# x = 123456.789
# mant,exp = math.frexp(x)
# print(mant,exp)  # 0.9419005508422852 17

# gcd（） 用来计算两个整数的最大公约数如果其中任一个数是零，则返回另一个非零数的绝对值。
# num1 = 24
# num2 = 36
# gcd_num = math.gcd(num1,num2)
# print(gcd_num)  # 12

# math.isclose(a, b, *, rel_tol=1e-9, abs_tol=0.0)
# 用于比较两个浮点数是否在一定范围内接近，可以检测两个浮点数是否在绝对误差或相对误差的范围内接近
# -  a ：要比较的第一个数
# -  b ：要比较的第二个数
# -  rel_tol ：相对误差容限
# -  abs_tol ：绝对误差容限
# x = 0.1+0.1+0.1
# y = 0.3
# print(math.isclose(x,y,rel_tol=1e-9))  # True


#   math.isfinite() 用于检查某个数字是否为有限的，即不是无穷大或NaN
# x = 10
# y = float('inf')
# z = float('nan')
# print(math.isfinite(x))  # True
# print(math.isfinite(y))  # False
# print(math.isfinite(z))  # False

# math.isnan(x) 用于检查给定的值是否为NaN（Not-a-Number），
# x = float('nan')
# y = 10
# print(math.isnan(x))   # True
# print(math.isnan(y))  # False

# math.lcm(a, b) 计算两个整数的最小公倍数，如果其中任一个数是零，则返回零
# num1 = 6
# num2 = 9
# lcm_num = math.lcm(num1,num2)
# print(lcm_num)





